// #pragma once
#ifndef ADMINISTRATOR_H
#define ADMINISTRATOR_H
#include <vector>
#include "identity.h"
#include "computer_lab.h"

/*
管理员类
  属性
    姓名、密码
  方法
    添加账号：给学生或教师添加账号，需要检查学生学号和教师职工号是否重复
    查看账号：查看教师或者学生的全部信息
    查看机房：查看所有机房信息
    清空预约：清空所有预约记录
    注销登录：退出当前登录
*/
class Administrator : public Identity
{

public:
  Administrator();
  Administrator(string name, string password);
  ~Administrator();
  void menu();             // 菜单
  void action(int choice); // 菜单操作管理
  void add_account();      // 添加账号
  void search_account();   // 查看账号
  void search_lab();       // 查看机房
  void clear_all_rsvt();   // 清空所有预约

public:
  static string m_def_account; // 默认管理员账户
  static string m_def_pwd;     // 默认管理员账户密码
  vector<ComputerLab> m_v_lab; // 机房容器
};

#endif // ADMINISTRATOR